//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright 2006 CORE Solutions Limited
// All rights reserved.
// PROPRIETARY AND CONFIDENTIAL INFORMATION.
// Use is subject to license terms.
//
// FUNCTION ID      :   COMMITMENT1BA
// AUTHOR           :   Alex Cheung
// DATE CREATE      :   2006/06/28
// DESCRIPTION      :   a BIZ LOGIC file for the function, COMMITMENT1BA
//                  :
//                  :
//                  :
//
// MODIFICATION HISTORY:
// DATE         AUTHOR          VERSION NO.         COMMENT
// -----------  --------------  ------------------  -------------------
// 2006/06/28   Alex Cheung     1.0                 source is generated.
//
//
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

package com.erp.app.catalog.catgroup.bizLogic;

import java.sql.Connection;

import com.erp.app.common.ProjectConstants;
import com.erp.app.common.query.BeanQuery;
import com.erp.app.common.select.beans.SelectDelegate;
import com.erp.app.common.util.ProjectDbObjectUtil;
import com.erp.app.catalog.catgroup.dao.CatalogGroupCommonDao;
import com.erp.app.catalog.catgroup.vo.CatalogGroupVO;

import com.erp.framework.model.bizLogic.SimpleSearchMaintStyleBizLogic;
import com.erp.framework.model.vo.ChildList;
import com.erp.framework.model.vo.SimpleBaseVo;
import com.erp.framework.types.CustomSqlDate;
import com.erp.framework.util.CommonUtil;
import com.erp.framework.util.logger.Logger;


/**
* <p>A <strong>BizLogic</strong> provides the logical flow and control
* of the business model at different transaction time.
*
* @author          Alex Cheung
* @version 1.0     2006/06/28
* @since           FrameWork 1.0
*
*/
public class CatalogGroupBizLogic extends SimpleSearchMaintStyleBizLogic {

    private CatalogGroupCommonUtil util = new CatalogGroupCommonUtil();
    private CatalogGroupCommonDao dao = new CatalogGroupCommonDao();

    /**
    * Generates a unique document number.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void genDocNo(SimpleBaseVo model, Connection conn) throws Exception {

    }

    /**
    * Provides logics to insert business object before creating the object.
    * Note that this function has NO user transaction control.
    *
    * @param      model   the incoming business model (VO)
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsBeforeCreate(SimpleBaseVo model) throws Exception {
        Logger.debug(this, "in bizLogicsBeforeCreate()");

        // calculate dtl dates
        CatalogGroupVO vo = (CatalogGroupVO) model;
        //calculateDtlDates(vo);
    }

    /**
    * Provides logics to insert business object before creating the object.
    * Note that this function has user transaction control.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsBeforeCreateModel(SimpleBaseVo model, Connection conn) throws Exception {

        Logger.debug(this, "in bizLogicsBeforeCreateModel()");
        //CatalogGroupCommonUtil.setPkForNonStandardChildren(model);
    }

    /**
    * Provides logics to insert business object after creating the object.
    * Note that this function has user transaction control.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsAfterCreateModel(SimpleBaseVo model, Connection conn) throws Exception {
				Logger.debug(this, "in bizLogicsAfterCreateModel()");
    }

    /**
    * Provides logics to insert business object after creating the object.
    * Note that this function has NO user transaction control.
    *
    * @param      model   the incoming business model (VO)
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsAfterCreate(SimpleBaseVo model) throws Exception {

        Logger.debug(this, "in bizLogicsAfterCreate()");
    }

    /**
    * Provides logics to update business object before updating the object.
    * Note that this function has NO user transaction control.
    *
    * @param      model   the incoming business model (VO)
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsBeforeUpdate(SimpleBaseVo model) throws Exception {

        Logger.debug(this, "in bizLogicsBeforeUpdate()");

        // calculate dtl dates
        CatalogGroupVO vo = (CatalogGroupVO) model;
        //calculateDtlDates(vo);
    }

    /**
    * Provides logics to update business object before updating the object.
    * Note that this function has user transaction control.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsBeforeUpdateModel(SimpleBaseVo model, Connection conn) throws Exception {

        Logger.debug(this, "in bizLogicsBeforeUpdateModel()");
    }

    /**
    * Provides logics to update business object after updating the object.
    * Note that this function has user transaction control.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsAfterUpdateModel(SimpleBaseVo model, Connection conn) throws Exception {
        Logger.debug(this, "in bizLogicsAfterUpdateModel()");
    }

    /**
    * Provides logics to update business object after updating the object.
    * Note that this function has NO user transaction control.
    *
    * @param      model   the incoming business model (VO)
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsAfterUpdate(SimpleBaseVo model) throws Exception {
    }

    /**
    * Provides logics to remove business object before removing the object.
    * Note that this function has NO user transaction control.
    *
    * @param      model   the incoming business model (VO)
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsBeforeRemove(SimpleBaseVo model) throws Exception {

        Logger.debug(this, "in bizLogicsBeforeRemove()");
    }

    /**
    * Provides logics to remove business object before removing the object.
    * Note that this function has user transaction control.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsBeforeRemoveModel(SimpleBaseVo model, Connection conn) throws Exception {

        Logger.debug(this, "in bizLogicsBeforeRemoveModel()");
    }

    /**
    * Provides logics to remove business object after removing the object.
    * Note that this function has user transaction control.
    *
    * @param      model   the incoming business model (VO)
    * @param      conn    the database connection
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsAfterRemoveModel(SimpleBaseVo model, Connection conn) throws Exception {

        Logger.debug(this, "in bizLogicsAfterRemoveModel()");
    }
    /**
    * Provides logics to remove business object after removing the object.
    * Note that this function has NO user transaction control.
    *
    * @param      model   the incoming business model (VO)
    *
    * @author     Alex Cheung
    * @since      Framework 1.0
    */
    public void bizLogicsAfterRemove(SimpleBaseVo model) throws Exception {

        Logger.debug(this, "in bizLogicsAfterRemove()");
    }
   
}
